runtime.schedt.nmspinning (field)
15 uses
runtime (current package)
proc.go#L1017: sched.nmspinning.Add(1)
proc.go#L3072: if sched.nmspinning.Load()+sched.npidle.Load() == 0 && sched.nmspinning.CompareAndSwap(0, 1) { // TODO: fast atomic
proc.go#L3135: if sched.nmspinning.Load() != 0 || !sched.nmspinning.CompareAndSwap(0, 1) {
proc.go#L3150: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3226: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3402: if mp.spinning || 2*sched.nmspinning.Load() < gomaxprocs-sched.npidle.Load() {
proc.go#L3536: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3896: nmspinning := sched.nmspinning.Add(-1)
proc.go#L6072: sched.nmspinning.Add(1)
proc.go#L6313: if runqempty(pp) && sched.nmspinning.Load()+sched.npidle.Load() > 0 && pd.syscallwhen+10*1000*1000 > now {
proc.go#L6407: print("SCHED ", (now-starttime)/1e6, "ms: gomaxprocs=", gomaxprocs, " idleprocs=", sched.npidle.Load(), " threads=", mcount(), " spinningthreads=", sched.nmspinning.Load(), " needspinning=", sched.needspinning.Load(), " idlethreads=", sched.nmidle, " runqueue=", sched.runqsize)
proc.go#L7212: if i >= active_spin || ncpu <= 1 || gomaxprocs <= sched.npidle.Load()+sched.nmspinning.Load()+1 {
runtime2.go#L780: nmspinning atomic.Int32 // See "Worker thread parking/unparking" comment in proc.go.